Individual Codec Pathway Impairment Indicator for use in a Communication System

ABSTRACT

A system and method are described for controlling the setup of a connection in a communication network that includes a set of nodes, such as Mobile Switching Centers (MSCs) and Media Gateways (MGWs). In one example, a speech connection is established between MGWs subject to the control of the MSCs, which can selectively activate or deactivate codecs along the connection. The codecs are selected from a list of supported codecs, each potentially affecting connection quality by differing amounts. A Total Accumulated Impairment (TAI) element is forwarded between the MSCs and step by step updated by these MSCs that includes individual partially accumulated impairment values corresponding to each of the supported codec candidates. Each individual indicator value provides information representative of the expected accumulated impairment along a candidate connection path leading up to, and including, the corresponding codec. By providing information pertaining to the expected accumulated impairment along each candidate connection path, the MSCs can determine an optimum sequence of codecs so as to minimize the overall connection impairment.

FIELD OF THE INVENTION

The invention generally relates to communication systems and, inparticular, to techniques for determining, on a call-by-call basis, theimpact and optimal choice of pay-load coding schemes along a wireless orwireline connection.

BACKGROUND OF THE INVENTION

Communication networks consist of interconnected nodes and can besubdivided into core networks and access networks, the latter providingaccess to user equipment, for example a wireless access for mobile userequipment to a radio access network. Core networks interconnect accessnetworks and further networks, e.g. other core networks or the Internet.In the Universal Mobile Telecommunications System (UMTS) architecture,an access network can be controlled by a Radio Network Controller (RNC),which is connected to the core network and provides access to the corenetwork, i.e. serves as access node. In the Global System for MobileCommunications (GSM) architecture, the access network is controlled by aBase Station Controller (BSC). The 3G core network is controlled by oneor more Mobile Switching Centres (MSCs). These MSCs also influence thedecisions in RNC and BSC.

For the transmission on a connection, speech (or other media) is encoded(and subsequently decoded) according to one or more encoding/decodingschemes, also referred to herein as coding schemes and alternativelydenoted “codecs”. Determination of an optimal codec or set of codecs maybe done by means of Codec Negotiation. A coding scheme can transportspeech either in a compressed or in a non-compressed mode. In manynetworks, different coding schemes can be used and different nodes canhave different capabilities for handling the coding schemes. Speechtranscoders perform the transcoding between different speech codingschemes, i.e. they decode the one scheme into speech (linear PCM orother representation) and then encode the speech by the other scheme.Hence, a transcoder is a device that performs a codec, i.e. itimplements a particular coding scheme (in fact a transcoder canimplement a number of coding schemes and employ them on per call basisas requested by call/session control applications). Tandem FreeOperation (TFO) is a configuration of two transcoders with compatiblecoding schemes on the compressed voice sides at both ends of aconnection, i.e. on the interface to the user equipment. In this case,the transcoding stages can be bypassed and the compressed voice codingis used end to end in the connection (see 3GPP TS 28.062).

Out of Band Transcoder Control (OoBTC) permits speech connections to beestablished end to end with a common coding scheme, i.e. ideally thesame speech coding is used in the whole connection between the accessnetworks. The advantage is that maintaining compressed voice saves corenetwork bandwidth and optimizes speech quality, because transcodingstages, which in principle always introduce distortion, are avoided (see3GPP TS 23.153).

An International Telecommunication Union (ITU) protocol called BearerIndependent Call Control (BICC) supports out of band signalingprocedures, which allow a negotiation of the coding scheme betweennetwork nodes. In the ITU-Telecommunication Standardisation Sector(ITU-T) proposal BICC Q. 1901 (ITU, June 2000), coding schemenegotiation is performed from the originating control node in aconnection to each subsequent node by including a list of allowed codingschemes in the Application Transport Parameter (APP) parameter in theInitial Address Message (IAM) for the set-up of the connection. Eachnode checks the list and if it does not support a particular coding typeit removes it from the list. The adapted list is passed on with the JAMand any non-supported types are removed as long as the BICC signaling issupported. When the final node, either the terminating node or the lastnode supporting BICC, is reached, the coding scheme type is selected bythe node. This selected coding scheme and the list of remaining,commonly supported codec schemes are returned to the originating nodevia all intermediate nodes.

In the BICC coding scheme negotiation procedures there are no rules fordefining how many transcoder stages are allowed and whether an accessnetwork that supports out of band coding scheme negotiation can activatetranscoders to keep Transcoder Free Operation (TrFO) between the accessnode and the rest of the network. The number of transcoding stages in aconnection end to end can significantly affect the speech quality. Morethan three transcoding stages typically cause substantial speechimpairment. The number of stages causing a substantial impairmentdepends on the coding algorithm/scheme and the speech impairment byfurther entities in the connection.

The coding scheme negotiation procedures may result in transcoders beingactivated to enable supplementary services or because the bearertechnology in a node or network does not support compressed voice. Forexample, Asynchronous Transfer Mode (ATM) networks allow transmission ofeither compressed or non-compressed speech, while Synchronous TransferMode (STM) networks require non-compressed speech coding, which via bitstealing can include TFO with compressed speech (TFO is not reallyrequired in STM). Furthermore, the negotiation should result in theoptimum location of the transcoders, which is with today's technologiesnot always the case. For example, for connections exiting a S™ networkto ATM, a transcoder should be located at the network edge to savebandwidth in the ATM network by use of a compressed coding scheme.

In many cases, it is necessary to modify the coding scheme in a sectionof a connection. For example, a connection is often transferred betweendifferent access networks due to a handover. Modifications in the corenetwork are disadvantageous, especially if they require increasedtransmission bandwidth, which will sometimes not be available causing atermination of the connection. The number of transcoder stages in aconnection can be increased by a modification, with correspondingquality impairment. Again, an optimum location of transcoders is oftennot achieved.

These issues will now be described in greater detail with reference tothe examples of FIGS. 1-4. FIG. 1 illustrates a speech call originatingin Integrated Services Digital Network (ISDN), with pulse codemodulation (PCM) A-law coding immediately inside an ISDN-terminal.(A-law is an ITU standard (G.711) for converting analog data intodigital form using PCM.) For simplicity, the local exchange thatcontrols the ISDN access is not shown. The TSC shown therein is atransit switching server, which may be collocated with an MSC. The callis routed to a Bearer Independent Core Network (BICN), where CodecNegotiation using Out-of-Band Transcoder Control (OoBTC) is supported,and the call terminates in a mobile terminal on a GSM access. For thisexample, it is assumed that the BICN and the GSM access support allstate-of-the-art GSM Codec Types in TFO. The mobile terminal alsosupports all GSM Codec Types. The optimal Codec Selection is then to usethe best Codec Type supported by the mobile terminal, e.g. the FullRate—Adaptive Multirate (FR_AMR) codec. The unavoidable transcoder (PCMA-law to FR_AMR) is placed at the interconvection from ISDN to the BICN,i.e. close to the originating side. Optimal voice quality (under theseconditions) is achieved with minimal bit rate in the BICN. In thisexample, the Codec Negotiation assumes that the ISDN access has onlyused PCM A-law and no other transcoding before. The offered “SupportedCodec List” in OoBTC in this case offers PCM A-law as first priority,without any additional information associated with this Codec entry.Other Codec entries follow after this, for example the FR_AMR. Theterminating side of the Codec negotiation knows that compression isnecessary inside the GSM mobile terminal, but that it is unimportantfrom a voice quality point of view where to place the transcoder.

FIG. 2 illustrates the same speech call, from ISDN to a GSM mobile, butin this case the mobile is not state-of-the-art and the only Codec Typesupported is GSM—Full Rate (GSM_FR) for which, in this case, the GSMradio access does not support TFO. Then “PCM A-law” inside the BICN isoptimal for optimal voice quality, although the bit rate issubstantially higher. Also in the example of FIG. 2, the CodecNegotiation assumes that the ISDN access has only used PCM A-law but noprevious transcoding. Again the offered “Supported Codec List” in OoBTCin this case offers PCM A-law as first priority, without any additionalinformation associated with this codec entry. Other codec entries followafter this, for example the FR_AMR. The terminating node has allnecessary information on the terminating radio access and can performthe optimal decision. For example, if voice quality is most important,the terminating radio access determines that FRAMR is not a good choice.

FIG. 3 illustrates the same scenario, but where bit rate through theBICN is to be minimized (instead of maximizing voice quality). Hence, inthe example of FIG. 3, the terminating radio access instead selectsFR_AMR for the BICN link and GSM_FR for the GSM access.

FIG. 4 illustrates a scenario wherein AMR is supported at theterminating end, but without TFO support. The terminating side candetermine, however, that AMR has a very high quality, much higher thanconventional GSM_FR. In this example, the operator puts a high weight onbit rate saving in the core network. Hence, AMR is also selected for theCore network in this case, although, in this case, an additionaltranscoding stage (i.e. a pair of transcoders) must be activated. Inparticular, compare FIG. 4 with FIG. 1 discussed above.

Now, considering the four examples together, the example of FIG. 1achieves the best quality, where only one transcoding from AMR to PCM isperformed, because AMR is the optimal codec in this case. The example ofFIG. 3 achieves the worst quality, because GSM_FR is substantially worsethan AMR and the additional transcoding to AMR for bit rate savingdegrades an already compromised voice quality too much (at least forsome operators). The example of FIG. 2 has exactly the number oftranscoding stages as in the example of FIG. 1, but the voice quality ismuch lower than in the example of FIG. 1, but better than in the exampleof FIG. 3. In the example of FIG. 4, a second transcoding stage has beenadded as compared with the example of FIG. 3. The resulting subjectivespeech quality is better than in the example of FIG. 3 and even betterthan in the example of FIG. 2 due to the fact that the use of two AMRsin sequence is still better than the use of GSM_FR once.

These conclusions are derived using otherwise conventional E-Modelanalysis techniques, which assign an “impairment” factor of “+1” to PCMA-law, “+20” to GSM_FR, and “+5” to AMR (12.2). E-model is acomputational model for use in transmission planning. AMR (12.2)represents one particular AMR codec mode. Conventional E-Modeltechniques assume that these impairments are added along the voice path.For the particular examples of FIGS. 1-4, the following impairment canthen be calculated:

-   -   Example of FIG. 1: Impairment=1+5=6 transcoding stages: 1    -   Example of FIG. 2: Impairment=1+20=21 transcoding stages: 1    -   Example of FIG. 3: Impairment=1+5+1+20=27 transcoding stages: 3    -   Example of FIG. 4: Impairment=1+5+1+5=12 transcoding stages: 3

Note that, for some communication system operators, it might beacceptable to allow additional speech compression for bit rate saving,but only in the example of FIG. 4, but not in example of FIG. 3. Thiscan be verified by using otherwise conventional Perceptual Evaluation ofSpeech Quality (PESQ) tools. PESQ sends a carefully selected speechutterance through an established voice path (or a simulated model of it)and records the resulting output signal. PESQ then compares the inpututterance with the output signal and calculates the impairment.

In view of the foregoing, it would be highly desirable to providetechniques for allowing network nodes to distinguish between the variousscenarios of FIGS. 1-4 to identify, on a call-by-call basis, the optimalselection of codecs to be activated into a connection. However,conventional Codec Negotiation protocols (i.e. TFO, OoBTC, SessionInitiation Protocol (SIP) and Session Description Protocol (SDP),Internet Pro-tocol Multimedia Subsystem (IMS), or ISDN User Part(ISUP)), do not provide information on how many transcoding stages arealready within the speech path and not how much the speech quality isalready degraded. This information is, however, required for the optimalselection, as shown in the examples above.

These and other problems were initially addressed by PCT PatentApplication WO 02/32152, entitled “Method and Node for the Control of aConnection in a Communication Network”, of Ericsson Telefon AB L M.Briefly, that patent application describes a technique wherein anindicator is forward among nodes of a communication network thatidentifies, e.g., the number of speech transcoders present along aconnection or the accumulated speech impairment along the connection.Nodes controlling the connection use the indicator to determine whetherto activate or deactivate speech transcoders along the connection. Forexample, if the indicator indicates that no transcoders are present inthe connection, a transcoder can be advantageously added. On the otherhand, if the indicator indicates that one or more transcoders arealready present, then preferably no additional transcoders should beadded.

In one example described in WO 02/32152, the indicator is a merely flagindicating whether at least one speech transcoder is present in theconnection. This allows a simple implementation of the techniqueutilizing small message size. In another example, the indicator is acounter indicating the number of speech transcoders in the connection.In still other examples, the indicator is a variable indicating theaccumulated speech impairment by speech transcoders in the connection,which is compared again one or more numerical thresholds to evaluateoptimal transcoder arrangements.

By exploiting the information contained within the indicator, thetechnique of WO 02/32152 allows for improved selection of transcoders ona call-by-call basis to achieve enhancement of the average quality ofconnections in a communication network while avoiding deterioration of aconnection due to changes in the coding scheme. In other words, nodescan intelligently exploit the information contained within the indicatorto make informed decisions regarding modifications to networkconnections, particularly the activation or deactivation of codecs orother transcoders. Moreover, any impact on the connection in a corenetwork is minimized because many modifications can be kept local in asingle node or in an adjacent pair of nodes. Additionally, thetechniques are not limited to speech transcoders but are more generallyapplicable to any entities affecting connection quality. Other examplesof such entities include conference devices for connecting conferencecalls.

Although the technique of WO 02/32152 represents a significantimprovement of previous techniques, room for further improvementremains. For example, whereas the indicator of WO 02/32152 can providean indication of the accumulated (speech) impairment along a connection,it would be beneficial to provide information pertaining to the speechimpairment or other impairment arising due to each individual codingscheme of a telecommunication service payload, transcoder or otherentity affecting connection quality, so as to permit a more informeddecision.

A further complication arises due to the fact that a given speech codingscheme (compression algorithm such as AMR) can be applied on differentlinks with different link characteristics. An AMR compression on a GSMradio link with transmission errors has substantially different overallquality impairments compared to an AMR on a fixed link without errors.Even between radio links the impairment is different: an AMR (7.4kbit/s) of a GSM Full Rate Channel is substantially more error robustthan on a GSM Half Rate Channel. AMR on an UMTS radio channel has yetanother impairment. The 3GPP standard TS 26.103 addresses thesedifferent radio access characteristics by differentiating the “CodecType” entry in the Codec List by compression algorithm (“AMR”, “EFR”)and by radio access “FR_”, “HR_”, “OHR_”, “GSM_” or “UMTS_”). Howeverthe Session Description Protocol/Session Initiation Protocol (SDP/SIP)does not take this differentiation into account (e.g. the SDP/SIP mapsall AMR Codec Types into a generic “AMR”) and is in that respect missinginformation to provide the basis for a good decision. Even worse, radioimpairments also depend heavily on the radio network design and theactual radio conditions. Some of these radio impairments are dynamicallyvarying over time and location, others are semi-static. Moreover,further impairments may occur along the speech path, e.g. conferencedevices, echo suppressors, noise reduction devices and many more, whichneed to be known for the optimal Codec Selection.

Accordingly, it would be desirable to provide still further informationwithin a connection impairment indicator so as to allow nodes to makemore informed decisions. It is to this end that the present invention isdirected.

SUMMARY OF THE INVENTION

In accordance with a method implementation of the invention, a method isprovided for controlling the establishment or modification of aconnection in a communication network comprising a plurality of nodes,wherein a connection is to be established or modified between selectednodes. At least one of the nodes is adapted to employ one or more codingschemes along the connection, wherein the coding schemes are selectedfrom a plurality of supported coding schemes potentially affectingconnection quality by individual amounts. An indicator is sent betweenthe nodes that includes information pertaining to connection quality,wherein the indicator includes a plurality of individual valuescorresponding to individual coding schemes, each value indicating anexpected accumulated impairment associated with a correspondingsupported coding scheme. In various examples described herein, theindicator is referred to herein as a Total Accumulated Impairment (TAI)indicator element (TAI element), which is comprised of individual TAIindicator values. The connection may be, for example, a speech, video ormultimedia connection.

In one exemplary implementation, the connection comprises a plurality ofconnection stages, each stage controlled by one or more nodes. Aplurality of candidate paths with respect to individual concatenationsof coding schemes lead through any preceding stages to a current stage.Each value of the indicator indicates the accumulated impairmentassociated with the corresponding supported coding scheme of the currentstage, as well as the impairment of any coding schemes along oneparticular candidate path chosen among the plurality of candidate pathsleading to the current stage. Preferably, the particular candidate pathis the path of least impairment. The accumulated impairment includesimpairment due to processing performed by transcoders associated withthe coding schemes and impairment due to radio impairment.

Also in the exemplary implementation, the communication networkcomprises control nodes and payload nodes, which are controlled by thecontrol nodes. The indicator is sent between control nodes, betweenpayload nodes, or between payload and control nodes. The connection isestablished between payload nodes. Each stage of the connection isadapted to update the values of the indicator based on the supportedcoding schemes of the corresponding stage. The indicator is initiallyforwarded from an originating stage to a terminating stage. Theterminating stage or any intermediate stage updates the values of theindicator based on impairments due to supported coding schemes of thecorresponding stage and then selects the path for use with theconnection based on the updated values of the indicator. The updatedindicator or a message derived therefrom is returned back through anyintermediate connection stages to the originating stage. More preciseimpairment estimates are calculated step by step in the backwarddirection by the intermediate stages and by the originating stageaccording to a finally selected terminating access and a finallyselected candidate path. The more precise impairment estimates arepassed on from stage to stage such that, within the originating stage,the total accumulated impairment of the selected path is exactly, or atleast more precisely, known. In one implementation, the originatingstage then sends the indicator with the more precisely calculatedaccumulated impairments in the forward direction through anyintermediate stages to the terminating stage. The node of theoriginating stage and the nodes of any intermediate connection stagesthen employ coding schemes in accordance with the selected connectionpath.

Preferably, the nodes are adapted to send messages containing a list ofsupported coding schemes. If so, the individual values of the indicatorare preferably sent as a dummy entry in the list. The indicator may alsobe sent in user plane (inband) with or without service payload (atconnection modifications after connection setup) or it may be exchangedbetween call control and payload nodes in both directions, for exampleat activation of entities in a payload node.

In accordance with a system implementation of the invention, a node isprovided for controlling the establishment or modification of aconnection in a communication network comprising a plurality of nodes,wherein the node has an interface to at least one other node. The nodeis adapted to establish or modify at least a portion of the connectionand to employ one or more coding schemes along the connection. Thecoding scheme is selected from a plurality of supported coding schemespotentially affecting connection quality by individual amounts. The nodeis operative to control establishment of a portion of the connectionbased in part on an indicator received in a control message, theindicator including information pertaining to connection quality. Theindicator includes a plurality of individual values corresponding toindividual coding schemes, each value indicating an expected accumulatedimpairment associated with a corresponding supported coding scheme. Thenode may be adapted to perform the methods summarized above.

The invention can be implemented as a hardware solution or as a computerprogram product comprising program code portions for performing thesteps of the invention when the computer program product is run on oneor more computing devices. The computer program product may be stored ona data carrier in fixed association with or removable from the computingdevice(s).

BRIEF DESCRIPTION OF THE DRAWINGS

In the following, the invention will be described with reference toexemplary embodiments illustrated in the accompanying figures, in which:

FIG. 1 illustrates an exemplary ISDN-AMR wireless connection havingtranscoders activated so as to achieve optimal voice quality;

FIG. 2 illustrates an exemplary ISDN-FR wireless connection havingtranscoders activated so as to achieve optimal voice quality;

FIG. 3 illustrates an exemplary ISDN-AMR-PCM-FR wireless connectionhaving transcoders activated so as to require minimal bit rate;

FIG. 4 illustrates an exemplary ISDN-AMR-PCM-AMR wireless connectionhaving transcoders activated so as to require minimal bit rate;

FIG. 5 illustrates an exemplary wireless or wireline communicationsystem in which the invention is implemented;

FIG. 6 illustrates candidate pathways associated with the communicationsystem of FIG. 5;

FIG. 7 illustrates the candidate pathways of FIG. 6 with respect tointernal components of a pair of exemplary MGWs;

FIG. 8 illustrates an exemplary pair of MSCs of the communication systemof FIG. 5 exchanging a supported codec list message having a TAIinformation element configured in accordance with the invention;

FIG. 9 illustrates the exemplary TAI information element of FIG. 8,which includes individual impairment values for each supported codec ofthe supported codec list; and

FIG. 10 provides an overview of a method for exploiting the TAIinformation element of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In the following description, for the purposes of explanation and notlimitation, specific details are set forth to provide a thoroughunderstanding of the invention. It will be apparent to those skilled inthe art that the invention may be practiced in other embodiments thatdepart from these specific details. In particular, the functionsexplained herein below may be implemented using individual hardwarecircuitry, using a software functioning in conjunction with a programmedmicroprocessor or general purpose computer, using an applicationspecific integrated circuit (ASIC) and/or using one or more digitalsignal processors (DSPs).

Turning now to FIGS. 5-9, exemplary embodiments of the invention willnow be described. First, with reference to FIG. 5, a communicationsystem of 100 is illustrated, in which the invention is implemented.Communication system 100 may be a combination wireless/wireline system.Communication system 100 includes a set of nodes 102-112 through whichsignals are routed that pertain to a communication connection, such asan individual speech telephone conversation conducted between mobiletelephones. The individual nodes represent individual pieces oftelecommunication equipment, such as servers, computer processors, andthe like, or systems composed of such components. In the example of FIG.5, the nodes include a set of MSC servers or control nodes 102-106through which control signals are routed and a set of MGWs or payloadnodes 108-112, through which the actual data corresponding to aconnection 113 is routed, such as a speech connection. The exemplaryconnection includes four portions 301-304. The nodes are shown as beingarranged in stages. In particular, an originating stage 115, anintermediate stage 117, and a terminating stage 119 are illustrated. Thenodes 102, 108 of the originating stage 115 are associated with the userequipment (not specifically shown) that originates the connection. Inthe example shown, each stage includes one control node and one payloadnode. It should be understood, however, that some stages may includemultiple control or payload nodes and some control nodes may controlpayload nodes of multiple stages. Hence, the scope of each stage issomewhat arbitrary. The term stage is used herein primarily for ease indistinguishing among originating, intermediate (if any) and terminatingportions of the connection. (Note that, in the figure, O-MSC can alsoplay the role of TSC and GMSC nodes, while I-MSC can be a TSC node only,whereas T-MSC can also be TSC.)

Depending upon the originating user equipment, signals exchanged betweenthe originating nodes and the user equipment may be received, forexample, via Iu from a UTRAN system, via A from a GERAN system, via TDMfrom a PSTN system, via IP from a NGN system or via IP from a IMSsystem. UTRAN stands for UMTS Terrestrial Radio Access Network. Iu is anabbreviation for the UTRAN interface. GERAN stands for GSM/EDGE radioaccess network, where EDGE refers to “enhanced data rates for GSMevolution.” “A” refers to the interface within the GERAN architecturebetween an MSC/MGW and a base station subsystem (BSS) of the GERAN. PSTNis the public switched telephone network and TDM refers to time-divisionmultiplexing. IMS is the IP Multimedia Subsystem and NGN refers to NextGeneration Networks.

The terminating nodes (106, 112) are associated with the terminatinguser equipment that receives the connection. Likewise, depending uponthe terminating user equipment, signals exchanged between theterminating nodes and the terminating equipment may be via Iu from aUTRAN system, via A from a GERAN system, via TDM from a PSTN system orvia IMS from a NGN system. The intermediate nodes (104, 110) representany additional nodes that may be required between the originating nodeand the terminating nodes.

In order to establish, process, and eventually terminate a connection,various messages are transmitted between the MSC servers. Exemplarymessages include establishment messages, modification messages, andacknowledgement messages relating to the acknowledgement of amodification message or an establishment message. An exemplary message123 is shown within FIG. 5, which is relayed from a MSC server 104 toMSC server 106. To relay speech for a telephone conversation, one ormore transcoders (114-116) are provided within the various MGWs.Although only a single transcoder is illustrated per MGW in FIG. 5, inpractice each MGW may support numerous transcoders. Additionally,although not shown, the originating user equipment or the terminatinguser equipment may also include one or more codecs.

The transcoders compress and decompress speech, as needed, using one ormore codecs to enable transmission within the limited bit rate that maybe associated with a particular connection, such as exemplary connection113. Speech is compressed by a transcoder of one stage, thendecompressed by a transcoder of another stage, in accordance with aparticular codec that both transcoders are capable or employing. Hence,the codecs themselves essentially represent connections betweentranscoders. (This is illustrated more clearly in FIG. 6, discussedbelow.) Exemplary codecs include GSM_HR (5.6), GSM_EFR (12.2), AMR(12.2) and AMR (10.2). Others are listed below. Each time a codec isused, the act of coding and then decoding the speech tends to degrade orimpair the speech quality. Different codecs impair or degrade speechquality by potentially differing amounts.

Among the information contained within control messages, such as message123, is information pertaining to the available codecs in a specificnode along the connection path. In particular, the message preferablyincludes a list of “supported codecs,” i.e. encoding/decoding schemescapable of being performed between the transcoders of the various MGWsand that may be activated or deactivated during any particularconnection. Using information contained within the supported codec list,the MSC servers selectively employs codecs along connection 113. Inaddition to providing a list of supported codecs, message 123 preferablyalso includes an information element having individual impairmentvalues, one per supported codec, that indicate the expected accumulatedimpairment along a candidate connection path 121 associated with thesupported codec.

The information element of message 123 will be described in greaterdetail below. First, however, “candidate connection paths” will bedescribed with reference to FIGS. 6 and 7. FIG. 6 illustrates exemplarycodecs 122 that may be used between the MGWs of the three stages of FIG.5. Each MGW has transcoders (FIG. 7) capable of implementing variouscodecs, which differ from one another and may also differ from thecodecs of the other stages. In the example of FIG. 6, the originatinguser equipment (not shown) and the originating MGW stage are bothcapable of supporting Codecs 1-5 and so connection portion 301 isimplemented using one of Codecs 1-5. The originating stage and theintermediate stage are both capable of supporting Codecs 1-5 and soconnection portion 302 is also implemented using one of Codecs 1-5. Theintermediate stage and the terminating stage are both capable ofsupporting Codecs 6-10 and so connection portion 303 is implementedusing one of Codecs 6-10. (Note that the originating stage is notnecessarily capable of supporting Codecs 6-10 and the terminating stageis not necessarily capable of supporting Codecs 1-5.)

A large number of possible connection paths may be defined through thecodecs from the originating stage through the terminating stage. Theseare shown in phantom lines. With multiple intermediate stages, a muchgreater number of possible paths may be present. The originating userequipment and the terminating user equipment also preferably supportmultiple codecs, hence the connection path from the originating userequipment to the terminating user equipment may have a still greaternumber of possible connection paths. Ideally, all MGWs support the samelist of alternative codecs and allow the MSCs to select the optimalcodec end-to-end, depending on the originating and/or terminatingterminals.

For any given codec that is supported by the transcoders of a particularstage, one of the possible paths leading up to that stage is consideredpreferred or optimal based, for example, on the expected accumulatedconnection impairment along the path leading up to that stage. Thispreferred or optimal path is referred to herein as a “candidate path,”since it represents one viable candidate for the final connection paththrough the entire sequence of stages (i.e. connection 113 of FIG. 5.)Not all possible paths are considered “candidate paths.” Rather, foreach supported codec of each stage, only one candidate path is selectedfrom among all of the possible paths leading to that stage. At eachstage, a separate impairment value is maintained within message 123 ofFIG. 5 for each supported codec of that stage. The impairment valuerepresents at least the total impairment along the candidate pathsleading to that stage.

One exemplary candidate path is highlighted in FIG. 6. Morespecifically, path 121 represents the “candidate path” for codec 125 assupported by the terminating stage 119. An impairment value is storedwithin message 123 that represents the impairment along path 121.Although not highlighted within the figure, each of the other supportedcodecs of the terminating stage also has a single candidate pathassociated therewith. Hence, in this simplified example, there are fivecandidate paths leading to the terminating stage since the terminatingstage supports five different codecs. Separate impairment values aremaintained within message 123 for those candidate paths as well.Ultimately, one of these candidate paths leading to the terminatingstage is selected as the final connection path. The final connectionpath is preferably the path with the least overall impairment,calculated based on the various impairment values. Once the final pathis selected, the various codecs along that particular path are then usedto process the speech signal.

FIG. 7 illustrates how signals are routed through MGWs. Each includesone or more transcoders. With FIG. 7, transcoder 114 of originating MGW108 is shown and transcoder 114 of originating MGW 108 is shown.Transcoder 114 is capable of implementing Codecs 1-5, and hence Codecs1-5 are illustrated therein. It should be understood, however, that theCodecs do not represent pieces of equipment within the transcoder butrepresent coding schemes supported by the transcoder. Transcoder 116 iscapable of supporting Codecs 1-5 and Codecs 6-10. As can be seen,transmission between MGWs occurs between like codec portions of thetranscoders, i.e. transcoder 114 encodes speech via Codec 5 andtranscoder 116 then decodes the speech using Codec 5. Internal payloadtransmission within the MSGs is illustrated via lines 305 and may beimplemented, e.g. via linear PCM. For example, speech decoded via theCodec 1 decoder of transcoder 114 is internally transmitted via PCM tothe Codec 5 encoder of transcoder 114 for subsequent trans-mission toMGW 116. Hence, internal signal routing need not be between like codecs.

One important side aspect of the codec selection procedures is, thateach MSC node in the path has only a limited “local” view on its ownresources and the incoming list of candidate codecs (paths), but thewhole procedures shall find the overall global optimum. Each node in thepath, at some point, performs pre-selections to minimize the informationflow to the next node, without scarifying the global optimum and withoutknowing the resources of the following stages.

An intermediate node gets the list of n supported codecs from thepreceding node, together with the n associated accumulated impairmentsfor each candidate. This intermediate node knows also all m of its owncodecs and the m associated impairments these would introduce, ifselected and inserted into the path. The intermediate node can thereforecalculate all n*m combinations and all of these n*m total accumutatedimpairments. Then, in order to keep the outgoing list within amanageable size, it has to select k of these candidates to send thesefurther on to the next node, together with the k associated accumulatedimpairments, which are now in general bigger than in the incoming list.

Turning now to FIGS. 8 and 9, an information element 120 is containedwithin message 123 relayed between MSC server 102 MSC server 104,wherein information element 120 includes a supported codec list 122, aswell as a total accumulated impairment (TAI) data element 124 listingindividual impairment values 126 associated with candidate paths leadingup to, and including, the supported codecs 122. More specifically, foreach particular supported codec (or other element that may affect theconnection quality) of a given stage, an individual TAI value is storedwithin the TAI element that represents the total expected impairmentassociated with the candidate path leading up to, and including, thatparticular codec of that particular stage. Hence, the TAI elementincludes the accumulated impairments for each of the listed supportedcodecs. That is, the TAI element is associated with a list of supportedcoding schemes, not with a list of particular transcoder devices. Forthe example of FIG. 6, message 123 sent from the originating stage tothe intermediate stage thereby includes a list of the five codecssupported by the originating stage, as well as an indicator value foreach of the five codecs supported by the originating stage. Eachindicator value represents the expected accumulated impairment along thecandidate path that leads up to, and includes, the correspondingsupported codec. After the message is received by the intermediatestage, the intermediate stage will then change the indicator values toreflect the codecs supported by the intermediate stage. Preferably, theindicator 124 is sent only between control nodes (102-106) whereas theconnection itself 113 is established between the payload nodes(108-112).

Returning to the example of FIG. 5, the TAI element of message 123 isfirst generated by the MSC 102 of the originating stage 115 based on thecodecs that it supports and all knowledge it may have of the path 301from the originating terminal up to MGW 108. The TAI element is thensent to the MSC 104 of the intermediate stage, which updates the TAIvalues based on the codecs its MGW 110 supports. Individual impairmentvalues may be left unaltered or may be increased due to additionalexpected impairment. The TAI element is then sent to the MSC 106 of theterminating stage 119, which further updates the TAI values based on thecodecs its MGW 112 supports and all knowledge it may have of the path304 from MGW 111 up to the terminating terminal. Based on theinformation within the TAI element, the terminating MSC 106 selects alocally optimal combination of codecs for use in the pathsegments 303and 304 that will result in minimum impairment to the overallconnection, i.e. that will degrade the quality of the connection theleast. Note that MSC 106 must select the codec for path 303 from thelist of codecs in the Supported Codec List it received from MSC 104. MSC106 must select a codec from the list it received from the terminatingterminal for path 304. Ideally, these codecs for paths 303 and 304 areidentical and no transcoding is necessary. MSC 106 then relays theSelected Codec and the Alternative Codec List and the associated TAIelements back through MSCs 104, 102 of the various stages so that theycan then select and activate the locally optimal codecs for use in theirpath-segments 302 and 301. In the best case, these locally optimalcodecs are identical or at least compatible along the whole path inorder to minimize or avoid transcoding stages, i.e. provide the globaloptimum.

Note that the information contained within data element 124 is notlimited to providing an identification of the accumulated impairment dueto the operation of a sequence of codecs along a candidate pathway, butcan additionally (or in the alternative) reflect impairment due to radioimpairment arising in connection with the candidate pathway as well, oracoustic impairments, or impairments due to digital signal processing,such as noise reduction, echo cancellation, level compensation, and thelike. In the case of enhanced processing techniques such as noisereduction, echo cancellation and level cancellation the accumulatedimpairment may also decrease.

Preferably, the new TAI element 124 is inserted within the (existing)list of supported codecs of the message as if it were merely anothersupported codec within the list. Accordingly, any MSC that has not beenconfigured to recognize and exploit the TAI element will simply deletethe TAI element as if it were merely an unsupported codec. Those MSCsthat are configured to recognize and exploit the TAI element willextract data from the element for use in updating the TAI element and/ordetermining the optimal sequence of codecs to be employed, i.e. todetermine which codecs should be activated or deactivated from thatportion of the connection that the particular MSC controls. In thismanner, the TAI element is backward-compatible, i.e. it is compatiblewith any pre-existing network components that are not specificallyconfigured to recognize and exploit the TAI element. Note that MSCsconfigured to recognize and exploit the TAI element can select a codeceither via “external” selection or “internal” selection. By externalselection, it is meant that the MSC merely selects a codec from the listof supported codecs for the incoming link. With internal selection, theMSC selects an additional, potentially different codec based on its owncapability for generating a new TAI list with updated TAT values, whichis subsequently forwarded to other MSCs on the outgoing link.

FIG. 10 summarizes the use of the TAI element in connection withspecific attention to the terminating MSC. Briefly, beginning at step200, for a given individual connection, such as a particular mobilecall, the terminating MSC receives a supported codec list incorporatingthe TAI element listing the individual impairment values for thecandidate paths, represented by these codec candidates. At a first step202, any unsupported codecs are then removed from the list (state of theart). That is, any codes associated with codecs that are not supportedby the particular portion of the connection that the terminating MSCcontrols are moved from the list. This is in accordance with otherwiseconventional techniques. Together with the unsupported codec candidates,also their TAI values are eliminated. At step 204, the individualimpairment values are updated to reflect additional impairments due tothe codecs of the terminating stage (terminating MGW) and theterminating path to the terminal and are then analyzed to determine theoptimal sequence of codecs from among the list of remaining supportedcodecs. Note: the terminating MSC has the power to select the codec forits incoming link and it can offer one or more codecs for the outgoinglink.

At step 206, the terminating MSC activates or deactivates these twocodecs from the communication link in accordance with the optimalsequence of codecs determined for that particular connection. In thisregard, the terminating MSC sends appropriate control signals to one ormore associated MGWs so as to control the MGWs to route the connectionthrough the codecs that the terminating MSC has determined are optimalfor that particular portion of the connection. At step 208, the MSC ofthe terminating stage relays the TAI element to the MSCs of thepreceding stages to allow those MSCs to also select their codecs and toalso instruct the MGWs associated with these MSCs to activate ordeactivate the selected codecs in accordance with the optimal sequenceof codecs.

Finally, at step 210, the originating MSC activates the connection. Datafor the connection, such as encoded speech data, is routed through theoptimal sequence of codecs. Note that the example of FIG. 10 is asimplified example providing an overview of just the operation of theMSCs, focusing on the terminating stage. In practice, the MSCs of eachstage access and potentially modify each TAI element. This will bedescribed in greater detail below with respect to various implementationexamples involving originating, intermediate and terminating MSCs.

Preferably, the TAI indicator of the invention is also implemented inconnection with TFO (see 3GPP TS 28.062) and TrFO (see 3GPP TS 23.153),which are technologies in 3GPP that aim to avoid speech qualityimpairments caused by unnecessary transcoding steps along the speechpath. Both technologies exchange lists of codec-type candidates to allowthe decision to be made as which codec type to use on which sub-link ofthe speech path. Further information may be found in 3GPP TR 23.977(BARS). The “Codec Negotiation” can either be realized by “InbandSignalling” (for TFO, see TS 28.062), or by OoBTC (see 3GPP TS 23.153),or by the “SIP” (see SIP: (Internet Engineering Task Force) IETFstandard) together with “SDP” (see also the IETF standard) and by a 3GPPvariant of SIP, called INS (“IP Multimedia SubSystem”). However,principles of the invention may potentially be exploited in connectionwith other technologies as well. For the sake of simplicity, examples ofthe TAI element are primarily provided herein for use with OoBTC.

The values inserted within the TAI may be initially derived using theE-Model of ITU-T, but, as will be explained, radio interface values maybe added and the values may be adjusted based on a particular operator'sindividual network layout. In particular, the E-Model (see G.107 andG.108) and other sources (see 3GPP TR 26.975) specify or allow to derivethe intrinsic TAI values (impairment elements, also called “IE-Values”inthe E-Model). “Intrinsic” means: “without any transmission errors”. The“Impairment elements” (Ie) defined in the standard E-Model may also bemodified in some cases to give the overall decision a certain “drift”.At call setup, the originating call control node (e.g. the MSC-Server inthe BICN in a mobile originating call) generates a list of Codec Types(i.e. a Supported Codec List) that are offered as alternatives for thiscall, see TS 23.153. This is otherwise conventional. In addition,though, the new TAI IE (IE=Information Element) is added as a “dummyCodec Type” entry in the Supported Codec List. This TAI IE holds newinteger parameters (referred to herein as tai1, tai2, . . . ), with onefor each entry of Codec Type IEs in the Supported Codec List. In oneexample, this new parameter ranges from 0 (=no impairment) to 100 ormore (extreme impairment). For a practical implementation, a total rangeof 0 . . . 255 (one byte) is typically appropriate. Of course more thanone byte could be reserved, e.g. a 16-bit word (0 . . . 65000) or othercoding methods could be used in order to allow for an extended range.

The following is an example of a Supported Codec List with the new TAIDummy Codec added. For the sake of simplicity in this description anexample AMR Configuration is used, the so called “PreferredConfiguration 1” (PC1), as is defined in TS 28.062, chapter 7.

PC1 for FR_AMR:=ACS=0x95, SCS=0x95, OM-i-MACS=0x04, also for UMTS_AMR2.PC1 for HR_AMR:=ACS=0x15, SCS=0x15, OM+MACS=0x03.

The values (e.g. ACS=0x95) are in hexadecimal notation:

1. FR_AMR (PC1) 2. HR_AMR (PC1) 3. GSM_EFR 4. PCM A-LAW 5. UMTS_AMR2(PC1) 6. TAI (    tai (Codec 1),    tai (Codec 2),    tai (Codec 3),   tai (Codec 4),    tai (Codec 5) )

As noted above, the TAI is not a selectable codec itself, but is acontainer for auxiliary information. Any node in that path that is notconfigured to recognize this “dummy codec” can delete it from the list,in which case nothing is gained for this call, but the call does notfail either (i.e. backward compatibility is achieved). According to theE-Model, some Codec Type entries get a low TAI value (good quality),some get a high one (worse quality). Initially, the E-Model values areused in the TAI. But these values can then be redefined for each networkindependently, if wanted, using, e.g., otherwise conventional adaptivetechniques. The particular radio access is preferably taken into accountas well, represented by an additional impairmeat added to the initialimpairment values, depending on access type and local or temporalconditions. Terminal properties may also be included as an additionalimpairment value that represents, e.g. the acoustic properties, theestimated background noise conditions, the applied hands-free equipmentand more.

The TAI element 124 (i.e. the “Supported Codec List plus TAI”) is sentalong the path and may be modified in each node. Impairments may eitherstay constant or may increase, but they do typically not decrease on thepath. Some codec entries (e.g. entry “n”) may be deleted. If so, thenthe corresponding tai(n) value is deleted as well. At the terminatingcall control node (e.g. the MSC-Server in a BICN for a terminatingmobile call), the tai (j) value for each codec type entry j is takeninto account, together with the terminating access, to select theoptimal codec type for the terminating radio access and the core networklink.

Exemplary TAI Data

Table 1 provides exemplary intrinsic TAI values for selected SpeechCompression Algorithms.

TABLE 1 Codec Type Intrinsic (in brackets: bit rate in kBit/s) TAI valuePCM A-law (64.0) and PCM uLaw (64.0) 1 G.729 (8.0) 10 GSM_FR (13.0) 20GSM_HR (5.6) 23 GSM_EFR (12.2) 5 FR_AMR(PC1) 5 HR_AMR(PC1) 10 AMR (12.2)5 AMR (10.2) 6 AMR (7.95) 9 AMR (7.40) 10 AMR (6.70) 13 AMR (5.9) 15 AMR(5.15) 19 AMR (4.75) 20

Table 2 provides exemplary TAI values for Radio TransmissionImpairments, where the radio channel characteristics of the GMSKmodulation in expressed as “carrier to interference (C/I) ratios”.Individual values for C/I are represented in dB. The first value listedwithin each individual block of the third column is the radio impairmentassociated with the first value listed under transmission conditions ofeach individual block of the second column, and so forth. For example,within the first row, radio impairment value “0” is associated withtransmission condition value “>13”. Likewise, the second value listed ineach block of the third column is associated with the second value ofthe corresponding block of the second column, and so forth. Theexemplary “weighted average” of the fourth column takes a given averageC/I distribution as its basis. This may vary between networks. Thenumbers in parenthesis in the is fourth column represent the intrinsicimpairment of the best codec rate (in case of an adaptive Codec, such asAMR), which is added to the weighted average of the radio impairment.

TABLE 2 Transmission conditions Radio Impairment TAI values (GSM radiochannel with Weighted Codec Type C/I in dB) Individual per C/I averageGSM_FR (13.0) >13/13/10/7/4/1 0/1/8/18/40/90 (20+) 7.9 GSM_HR(5.60) >13/13/10/7/4/1 0/1/8/18/40/90 (23+) 7.9 GSM_EFR(12.2) >13/13/10/7/4/1 0/1/8/18/40/90  (5+) 7.9 FR_AMR(12.2) >13/13/10/7/4/1 0/1/8/18/40/90  (5+) 7.9 FR_AMR(7.40) >13/13/10/7/4/1 0/0/0/3/18/38 (10+) 2.4 FR_AMR(5.90) >13/13/10/7/4/1 0/0/0/0/8/25 (15+) 1.2 FR_AMR(4.75) >13/13/10/7/4/1 0/0/0/0/2/10 (20+) 0.4 FR_AMR (PC1) With radiolink adaptation selecting the optimal mode:  (5+) 3.6 HR_AMR(7.40) >13/13/10/7/4/1 0/11/26/45/70/100 (10+) 17  HR_AMR(5.90) >13/13/10/7/4/1 0/3/9/24/50/100 (15+) 10  HR_AMR(4.75) >13/13/10/7/4/1 0/0/4/10/30/54 (20+) 4.7 HR_AMR (PC1) With radiolink adaptation selecting the optimal mode:  (10+) 12.3

Note: Radio impairments as calculated above are a type oflong-term-all-call-average, specific for this codec type on this radiolink. It can be operator dependent, location dependent, time and datedependent, or load dependent. The long term average radio impairment fora “reasonable” GERAN design can be derived by assumptions/measurementson the C/I distribution and the consequent likelihood for these CodecModes and the associated radio impairment fora mode at a given C/I. Forexemplary results see Table 2. For practical applications, the values ofTable 2 may be rounded to the next integer.

The TAI radio impairment values of Table 2 shall be added to therespective intrinsic impairment values of Table 1 to yield a value forentry within the TAI indicator. For example, the radio impairment valueof Table 2 for GSM_EFR (12.2) is 7.9, and is added to the intrinsicimpairment value for GSM_EFR (12.2) of Table 1 of 5, to yield the totalvalue of 12.9 for entry into the TAI indicator for use with GSM_EFR(12.2) on an average GSM radio link. For another example, the weightedaverage radio impairment value for the FR_AMR (PC1) with link adaptationis 3.6, according to table 2, and this is added to the intrinsicimpairment value of 5, according to table 1, for FR_AMR with the bestmode in PC1, to yield the total value of 8.6 for entry into the TAIindicator for use with FR_AMR(PC1) on an average GSM radio link.

TAI Encoding Example

The TAI values for all entries on the Codec Lists can be concentratedwithin one “dummy” codec type IE, which can be defined in 3GPP TS 26.103or ITU-T Q.765 or similar. The example here is given for TS 26.103.Various alternatives are possible, only one is given here in form of a3GPP “Change Request”. In one particular example, the CodecIdentification (CoID) code is defined to be: TAI_CoID:=is [0x1111.1110].The TAI codec has n additional mandatory TAI parameters, when there aren Codec Type entries in the Codec List (excluding the TAI dummy codecitself). Each TAI parameter: eight bits. This Tai parameter defines thetotal accumulated impairment up to that node within the CodecNegotiation procedure for the one associated Codec Type entry. Thelowest possible impairment value is 0 (=0x00), the highest possibleimpairment value is 255 (=0xFF). Interim results higher than 255 aremapped to 255, i.e. saturation is applied.

Table 3 provides a “Single Codec” information element that consists of5+n mandatory octets in case of the TAI Dummy Codec, wherein “m” refersto mandatory octets for this example.

TABLE 3 Parameter MSB 8 7 6 5 4 3 2 1 LSB 1 m Single Codec Single Codec(see ITU-T Q.765.5) 2 m Length 3 + n Indication 3 m Compat.Compatibility Information Info 4 m OID ETSI OID (See ITU-T Q.765.5 [6])5 m CoID TAI_CoID 5 + 1 m Tai 1 Tai 1 . . . m . . . 5 + n m Tai n Tai n

The TAI Dummy Codec can be placed anywhere inside the Codec Lists.

Originating Node Example

In one particular example, the following procedures are employed for theTAI Dummy Codec IE in the Originating Node. The node that originates aCodec Negotiation (e.g. the O-MSC) first assembles the “real”(conventional) Supported Codec List. Then it adds the TAI dummy codecIE, preferably, but not necessarily, at the end of the list. Then itassigns Tai parameters to each real Codec entry in the list in thefollowing step-by-step procedure:

-   -   1) For each real Codec Type entry the intrinsic TAI value is        determined first. This can be done e.g. by table look up,        because these intrinsic TAI values are predefined.    -   2) If a Codec Type is a “direct” code type, i.e. it can be used        on the link from the originating terminal up to this node        without using any transcoding stage in this node or in the MGW        node controlled by this server node, then just the (radio)        access error impairment for this Codec Type is added.        -   If the access is not via radio, but via ISDN/PSTN, then the            impairment for PCM (=1) is added (it is assumed that            ISDN/PSTN has no transmission errors).    -   3) If a Codec Type is an “indirect” codec type, i.e. it can not        be used in the originating terminal, but only be used with        transcoding in this originating node or in the MGW node        controlled by this server node, then the access impairment is        added to the intrinsic impairment of this Codec Type.        -   If the access is conventional ISDN/PSTN, then just the PCM            impairment is added. In this case the FR_AMR(PC1) gets            1+5=6.        -   If the originating access is, however, a radio link (without            TFO), then the impairment of this radio link is added, plus            the one for the PCM in between. Example: the originating            terminal uses the GSM_FR, with intrinsic impairment 20 and            GSM radio impairment 7.9, together 27.9, but the O-MSC can            only offer FR_AMR(PC1) in the Supported Codec List. Then the            TAI value of FR_AMR(PC1) is 5 plus 27.9. To be exact also            the impairment of PCM Alaw (=1) needs to be taken into            account, because in practise the transcoding from GSM_FR to            FR_AMR is done via PCM.        -   So the total accumulated impairment for FR_AMR(PC1) in the            O-MSC in this example is already 20+7.9+1+5=33.9.        -   If the Codec List contains several direct codec types, then            the minimal impairment of all these direct codec types is            added to the intrinsic impairments of all indirect codec            types. By this method the number of candidate paths is            reduced to a practical size, assuming that the best direct            codec (the one with minimal impairment) would be selected at            the end.        -   Note: this handling to reduce the size of the outgoing            Supported Codec List is similar to the handling in an            intermediate node, see below.    -   4) If the originating MSC server has additional information on        terminal type, accessory type or other information, then        additional impairments may be added, depending on that        additional information.

When the final SCL+TAI is sent forward, then each real codec entry hasan associated TAI value, which represents all impairments of theconnection up to that point in the speech path for the case that thisspecific codec would be selected.

The following example table shows a Supported Codec List for GERANaccess with three direct Codec candidates (FR_AMR, HR_AMR, GSM_EFR) andtwo indirect Codec candidates (PCM and UMTS_AMR).

1. FR_AMR (PC1) 2. HR_AMR (PC1) 3. GSM_EFR 4. PCM A-LAW 5. UMTS_AMR(PC7) 6. TAI ( tai(FR_AMR (PC1) ) = 8.6, tai(HR_AMR (PC1) ) = 22.3,tai(GSM_EFR) = 12.9, tai(PCM) = 9.6, tai(UMTS_AMR (PC7) ) = 14.6. )

In the forgoing the simplified notation, “UMTS_AMR(PC7)” stands for“preferred configuration 7” and includes only mode 12.2 and is used asan abbreviation for UMTS_AMR (ACS=80, SCS=80, OM+MACS=01).

A direct Codec is FR_AMR (PC1) for GERAN with TFO supported in GERAN andthe connected MGW. The intrinsic quality impairment for this isTai(intrinsic(FR_AMR(PC1)))=5, i.e. the one of the best possible mode(AMR12.2). The average radio impairment is 3.6 (see table 2). The finalTai value for FR_AMR (PC1) for O-MSC is:Tai(FR_AMR(PC1))=Tai(intrinsic(FR_AMR(PC1)))+Tai(radio(FR_AMR(PC1)))=8.6.For the second direct Codec Type, HR_AMR (PC1) the TAI is calculated as10+12.3=22.3. For the third direct Codec Type, GSM_EFR, the TAI iscalculated as 5+7.9=12.9.

The TAI value for the PCM Codec Type is calculated as 1 (its intrinsicimpairment) plus the minimum TAI of all three direct Codec Types, whichis 8.6 in this example. So PCM gets a TAI value of 9.6.

The TAI value for the UMTS_AMR(PC7), which is the second indirect codectype here, is 5 (its own intrinsic impairment)+1 (for PCM)+8.6=14.6

In another example with GSM_FR on the radio access the SCL may be:

1. PCM 2. FR_AMR (PC1) 3. TAI ( tai(PCM) = 20+7.9+1 = 28.9,tai(FR_AMR(1) 20+7.9+1+5 = 33.9.) )

This other GSM originating mobile supports only GSM_FR. TFO and TrFO forthis are not supported and so PCM must be used on the A-Interface. Thefirst Codec in the Supported Codec List is therefore PCM A-law and is anindirect Codec Type. The intrinsic Tai value for PCM is 1. But here aspecific GSM radio access is in addition to be included, withTai(intrinsic(GSM_FR))=20. Further, the radio impairment for an averageGSM_FR channel is considered as well (not detailed here), see Table 2.The final tai value for this PCM under the GSM access condition is:Tai(PCM)=1+20+Tai(radio(GSM_FR))=28.9.

The FR_AMR(PC1) is also only an indirect codec candidate. It's TAI canonly come “on top” of Tai(PCM) as calculated above. This FR_AMR(PC1) canbe used in the BICN without additional radio impairment. SoTai(FR_AMR(PC1)) with that GSM_FR radio access yieldsTai(FR_AMR(1))=Tai(PCM)+5=33.9.

In another example: the mobile is identified via its internationalmobile equipment identity (IMEI) as one with bad acoustic design and forexample 6 impairment points are added to all Tai values for all CodecType entries in the SCL. The Tai(FR_AMR(PC1)) of example 2 is thenincreased to 39.9.

Intermediate Node Example

The following procedures may be used for the TAI Dummy Codec in anIntermediate Node, Typically an intermediate node (I-MSC) checks theincoming Supported Codec List, removes entries, which are not known toit or which are not supported by its MGW-candidates and sends themodified list forward. A “legacy” MSC-Server therefore simply deletesthe TAI entry from the list. A TAI-capable intermediate node (e.g.I-MSC) sends the TAI entry forward, but potentially modified. The Taivalues associated to deleted codec entries shall be deleted as well. Theother Tai values are left unmodified, unless transcoding stages or otherprocessing of the User Plane (inside the I-MGW) are to be considered.

The following example shows the same incoming SCL+TAI as above, afterthe removal of GSM_EFR in a TAI-capable node.

1. FR_AMR (PC1) 2. HR_AMR (PC1) 3. PCM A-LAW 4. UMTS_AMR (PC7) 5. TAI (tai(FR_AMR (PC1) ), tai(HR_AMR (PC1) ), tai(PCM), tai(UMTS_AMR (PC7) )).

The next example shows the same incoming SCL+TAI as above, after theremoval of GSM_EFR and the removal of TAI in a legacy intermediate node.

-   -   1. FR_AMR (PC1)    -   2. HR_AMR (PC1)    -   3. PCM A-LAW    -   4. UMTS_AMR (PC7).

Note that “legacy” MSC-Servers, at this stage, delete the TAI IEcompletely, because they do not recognize it.

If the intermediate node needs to apply or foresee transcoding forwhatever reasons, or has to select a codec, e.g. due to supplementaryservices, or has to consider other user plane processing, e.g. aConference Device, and wants to start a new Codec Negotiation for theremaining path, then the following possibilities may be exploited:

Case A) The node selects a Codec for the incoming path from the incomingSCL after removing all Codec entries that it does not support. It can,e.g., select the Codec with the smallest Tai value (if voice quality isto be optimized), or another Codec Type (if other criteria is to beoptimized).

If we take the example of above, with GSM_EFR removed, but the TAIvalues preserved, then FR_AMR(PC1) should be selected for optimal voicequality.

After that selection, the node designs the new, outgoing SCL+Tai, withor without all or some codecs copied from the incoming SCL. The Taivalues for the outgoing SCL shall then take the Tai value of the alreadySelected Codec into account. If this already Selected Codec is againincluded in the outgoing SCL, and no signal processing is inserted inthis I-MGW, then its Tai value is also copied unmodified.

All other codec entries in the outgoing SCL get their own intrinsic Taivalue added to the Tai value of the Selected Codec.

In the same above example the outgoing SCL+TAI would be:

1. FR_AMR (PC1) 2. HR_AMR (PC1) 3. PCM A-LAW 4. UMTS_AMR (PC7) 5. TAI (tai(FR_AMR (PC1) ) = 8.6, tai(HR_AMR (PC1) ) = 19.6 tai(PCM) = 9.6,tai(UMTS_AMR2 (PC7) ) = 14.6 )

If, however, a signal processing is inserted in this I-MGW, such as aconference device, echo canceller, or other, which needs decoding andre-encoding, then the impairment of this signal processing has to beadded to the TAI value of the already pre-selected codec. All codeccandidates of the outgoing SCL get their individual intrinsic impairmentplus the TAI of the pre-selected codec plus the impairment due to thatsignal processing.

In the same above example, with an example signal processing impairmentof 4, the outgoing SCL+TAI would be:

1. FR_AMR (PC1) 2. HR_AMR (PC1) 3. PCM A-LAW 4. UMTS_AMR (PC7) 5. TAI (tai(FR_AMR (PC1) ) 8.6+4+5 = 17.6, tai(HR_AMR (PC1) ) 8.6+4+10 = 22.6,tai(PCM) 8.6+4+1 = 9.6, tai(UMTS_AMR2 (PC7) ) 8.6+4+5 = 17.6 )

Case B) The node does not select a codec at this point, but waits forthe result of the second codec selection coming back. This is, forexample, important for BICC-SIP interworking. The outgoing SCL is thenconstructed, with or without all or some codecs copied from the incomingSCL. The Tai values for the outgoing SCL then take the Tai value for themost likely codec on the incoming link into account. This can be thecodec with lowest Tai value so far (optimizing for best quality) oranother Codec (e.g. if optimizing for other criteria). Codec Types thatare directly copied from the incoming SCL to the outgoing SCL keep theirTai value unmodified. All other codec entries in the outgoing SCL gettheir own intrinsic Tai value added to the Tai value of the most likelycodec of the incoming link.

In the same above example the outgoing SCL+TAI for a SIP Invite,including the G.729 would be:

1. AMR (PC1) 2. G.729 3. PCM A-LAW 4. AMR (PC7) 5. TAI ( tai(AMR (PC1) )8.6 + 0 = 8.6, tai(G.729) 8.6 + 10 = 18.6 tai(PCM) 8.6 + 1 = 9.6,tai(AMR (PC7) ) 8.6 + 5 = 13.6 )

This calculation assumes this time that transcoding can be done withinthe MGW between the AMR and any other Codec without the intermediatestep of PCM Alaw. Note that SIP invite does not differentiate betweenFR_AMR and UMTS_AMR, but only simply offers AMR.

If the intermediate node needs to consider further user planemodifications in the connected MGW, then the impairments of these userplane modifications can be added as well to all outgoing tai values.

In the same above example the outgoing SCL+TAI for a SIP Invite,including the G.729 and a signal processing impairment of 4 would be:

1. AMR (PC1) 2. G.729 3. PCM A-LAW 4. AMR (PC7) 5. TAI ( tai(AMR (PC1) )8.6 + 4 + 5 = 17.6, tai(G.729)  8.6 + 4 + 10 = 22.6 tai(PCM) 8.6 + 4 + 1= 13.6, tai(AMR (PC7) ) 8.6 + 4 + 5 = 17.6 )

When, at a later point in time, the result of the second CodecNegotiation gets reported back, i.e. when the Selected Codec for theoutgoing path is known, then the intermediate node performs CodecSelection for the first, incoming call leg, taking both, the secondSelected Codec and its Tai value and the Tai values of the incoming SCLinto account.

Terminating Node Example

The following procedures may be implemented for the TAI Dummy Codec in aTerminating Node. The terminating node (e.g. a t-MSC Server) firstremoves all Codec Types from the incoming I-SCL+Tai that it does notsupport.

If the terminating node is not TAI-capable, then it removes the Taicodec from the I-SCL and the decision is otherwise conventional and allconsiderations end here.

If the terminating node is TAI-capable, then it interrogates theterminating access and builds the terminating T-SCL+Tai. The rules forthat are identical to the rules for an originating O-SCL+Tai (seeabove).

If the Tai values are missing in the I-SCL, then some default Tai valuesare used.

The terminating node then calculates for all possible n*k codeccombinations, i.e. for all n codecs in the incoming I-SCL+Tai and kcodecs in the terminating T-SCL+Tai, the total, end-to-end “e2e-Tai”values.

If the optimization criteria is voice quality, then the codeccombination with the low-est e2e-Tai value is selected. If theoptimisation criteria is different, then the calculated total e2e-Taivalues are used to exclude all combinations that exceed a certainmaximum Tai threshold and then a selection is made among the remainingcandidates.

This selection process in the terminating node defines two codecs:

-   -   the codec for the terminating access (“Terminating Codec”) and    -   the codec for the incoming path (typically the codec in the core        network).

This is also called a “Selected Codec” in the TrFO standard (TS 23.153).

Ideally both, the Terminating Codec and the Selected Codec, areidentical.

This Selected Codec is then sent backward. A Tai value is calculated andassigned, considering the Terminating Codec and this Selected Codec.This Tai value is calculated now “backward”, i.e. without consideringthe incoming path from the originating access to this terminating point,but this time the path is backwards from the terminating terminal. Thisis to allow the intermediate nodes and finally the originating node toselect the optimal codec for their call segments (ideally this is theSelected Codec again).

In addition, the terminating node constructs the “Available Codec List”(ACL) that is sent backward for future modifications of the call. Alsothis ACL has the Tai values associated, calculated “backward”, i.e.exactly the same way as if the ACL would be the originating SCL of acall setup in the opposite direction, with one exception: Codecs thatwere not included in the incoming I-SCL are already now excluded fromthe ACL.

After call setup the originating node has an exact end-to-end TAI valueof the establish call path, because in the backward path all final Taivalues have been considered correctly after the selections have beendone. The ACL+Tai, which is available at the originating node, gives agood overview about the other optional codec candidates and theirassociated Tai values. The originating node also knows the SelectedCodec in the neighbouring CN-segment and the Originating Codec, i.e. thecodec finally selected on the originating access.

The terminating MSC has similar information derived from the incomingSCL+Tai and its own selection process. It does not exactly know what thefinal decisions were in the backward process, but with high likelihoodthe Tai-estimate is good enough. The terminating node knows exactly theSelected Codec in the neighbouring CN-segment and the Terminating Codec.

In an alternative approach, which differs from the TrFO standard, theoriginating MSC sends a kind of ACL again in forward direction, thistime with exactly calculated TAI values, as the Originating Codec andall Selected Codecs are now exactly known, in order to allow all nodesin the path and especially the terminating node to have an exactknowledge about the accumulated impairments of the established path.

Ideally these determined Codecs are all identical, though such is notnecessary. In most cases the Selected Codecs are identical/compatible inall CN-segments and identical/compatible to either the Originating Codecor the Terminating Codec. In some cases different Selected Codecs mightbe selected along the path through the CN, but in most cases the AccessCodecs (Originating Codec and Terminating Codec) are then compatible totheir next Selected Codecs in their neighbouring CN segments.

Handover Example

The following procedures for the TAI Dummy Codec in Handover Situationsmay be implemented. When, at the originating side, a handover needs tobe performed, then the originating node interrogates the target radioaccess and determines the target X-SCL+Tai, exactly as the O-SCL+TAI orthe T-SCL+TAI are determined. It then performs a similar codec selectionprocess as the terminating node has done for call setup, considering thepreviously received ACL+Tai and this new X-SCL+Tai. Typically, the thusfar Selected Codec should be in the best combination and only a newOriginating Target Codec needs to be determined. In most cases the newOriginating Codec will be identical/compatible to the old OriginatingCodec. In that case the handover can be performed without influence onthe CN and the remaining call path. Similar procedures are used forhandovers at the terminating side as well as for other Mid-callModifications.

What have been described are various techniques for implementing anddeploying a TAI element. With this additional TAI information, the codecselection is substantially improved compared to conventional techniques.The balance between speech quality and e.g. bit rate saving can be tunedto be much more precise, i.e. in some cases additional transcoding ispossible (so as to save transmission effort), while in other cases PCMis to be used. With conventional techniques, this decision is alwaysbased on “thin” assumptions.

The techniques of the invention are flexible and can be applied to anykind of impairment in the communication path. As noted, the techniquesof the invention are also backward compatible. Moreover, the techniquesof the invention may be exploited on, and between, telecom protocolssupporting codec negotiation (TFO, BICC, SIP, other). It can beexploited in ISUP as well. Hence, wireless or other network operatorscan improve Voice Quality even under complex call scenarios and canequalize and optimize the voice quality together with otherside-conditions that allow network operation at substantially reducedoperational costs (lower bit rate, lower transcoding costs). The endcustomer perceives a better voice quality. The equipment vendor canexploit much better decision criteria and the various call cases can behandled in a more harmonized and therefore overall simpler way.

Thus, to summarize what has been described, in one example, a method isprovided for controlling the establishment or modification of aconnection in a communication network (100) comprising a plurality ofnodes (102-112), wherein a connection (113) is to be established ormodified between selected nodes (108-112). At least one of the nodes(102-106) is adapted to employ one or more coding schemes along theconnection (113). The coding schemes are selected from a plurality ofsupported coding schemes (122) potentially affecting connection qualityby individual amounts, and wherein an indicator (124) is sent betweenthe nodes that includes information pertaining to connection quality.The indicator (124) includes a plurality of individual values (126)corresponding to individual coding schemes, each value (126) indicatingan expected accumulated impairment associated with a correspondingsupported coding scheme (122).

In another example, a node (102-112) is provided for controlling theestablishment or modification of a connection in a communication network(100) comprising a plurality of nodes (102-112), wherein the node(102-112) has an interface to at least one other node (102-112). Thenode (102-112) is adapted to establish or modify at least a portion ofthe connection (113) and to employ one or more coding schemes along theconnection (113). The coding scheme is selected from a plurality ofsupported coding schemes (122) potentially affecting connection qualityby individual amounts. The node (102, 112) is operative to controlestablishment of a portion of the connection (113) based in part on anindicator (124) received in a control message (119). The indicator (124)includes information pertaining to connection quality. The indicator(124) includes a plurality of individual values (126) corresponding toindividual coding schemes, each value (126) indicating an expectedaccumulated impairment associated with a corresponding supported codingscheme (122).

Although described primarily with respect to speech codecs, theinvention is applicable to other entities that can affect servicequality, such as video codecs/video transcoders, rich mediaadaptors/transcoders, rich media filters, conference devices, echosuppressors, noise reduction devices, etc. In particular, the inventionis applicable to multimedia transmissions involving video codecs, wherethe TAI values represent video impairment. In these application casesTAI-values should be presented for each media (Speech, Video, other)separately.

While the invention has been described with respect to particularembodiments, those skilled in the art will recognize that the inventionis not limited to the specific embodiments described and illustratedherein. Therefore, it is to be understood that this disclosure is onlyillustrative. Accordingly, it is intended that the invention be limitedonly by the scope of the claims appended hereto.

1. A method for controlling the establishment or modification of aconnection in a communication network comprising a plurality of nodesthe method comprising the steps of: modifying or establishing aconnection between selected nodes and one of the nodes being adapted toemploy one or more coding schemes along the connection the codingschemes being selected from a plurality of supported coding schemespotentially affecting connection quality by individual amounts, andwherein sending an indicator between the nodes that includes informationpertaining to connection quality, wherein the indicator includes aplurality of individual values corresponding to individual codingschemes, each value indicating an expected accumulated impairmentassociated with a corresponding supported coding scheme.
 2. The methodaccording to claim 1, wherein the connection comprises a plurality ofconnection stages each stage controlled by one or more nodes; andwherein a plurality of candidate paths with respect to individualconcatenations of coding schemes lead through any preceding stages to acurrent stage.
 3. The method according to claim 2, wherein each value ofthe indicator indicates the accumulated impairment associated with thecorresponding supported coding scheme of the current stage and theimpairment of any coding schemes along one particular candidate pathchosen among the plurality of candidate paths leading to the currentstage.
 4. The method according to claim 3, wherein the particularcandidate path is a path of least impairment.
 5. The method according toclaim 1, wherein the accumulated impairment includes impairment due toprocessing performed by transcoders associated with the coding schemes.6. The method according to claim 1, wherein the accumulated impairmentincludes impairment due to radio impairment.
 7. The method according toclaim 1, the communication network comprising control nodes and payloadnodes which are controlled by the control nodes, wherein the methodfurther comprises sending the indicator between control nodes, betweenpayload nodes, or between payload and control nodes, and establishingthe connection between payload nodes.
 8. The method according to claim2, further comprising the step of adapting each stage of the connectionto update the values of the indicator based on the supported codingschemes of the corresponding stage.
 9. The method according to claim 2,wherein the indicator is initially forwarded from an originating stageto a terminating stage.
 10. The method according to claim 9, wherein theterminating stage or any intermediate stage executes the steps of:updating the values of the indicator based on impairments due tosupported coding schemes of the corresponding stage and selecting thepath for use with the connection based on the updated values of theindicator.
 11. The method according to claim 10, wherein the updatedindicator or a message derived therefrom is returned through anyintermediate connection stages to the originating stage.
 12. The methodaccording to claim 11, wherein more precise impairment accumulations arecalculated step by step in the backward direction by the intermediatestages and the originating stage according to a finally selectedterminating access and a finally selected candidate path and are passedon from stage to stage such that, within the originating stage, thetotal accumulated impairment of the selected path is more preciselyknown.
 13. The method according to claim 12, wherein the originatingstage after all selections have been made sends the indicator with themore precisely calculated accumulated impairments in the forwarddirection through any intermediate stages to the terminating stage. 14.The method according to claim 10, wherein the node of the originatingstage and the nodes of any intermediate connection stages employ codingschemes in accordance with the selected connection path.
 15. The methodaccording to claim 1, wherein the connection is a speech, video ormultimedia connection.
 16. The method according to claim 1, wherein thenodes are adapted to send messages containing a list of supported codingschemes and wherein the individual values of the indicator are sent as adummy entry in the list. 17-19. (canceled)
 20. A control node forcontrolling the establishment or modification of a connection in acommunication network comprising a plurality of nodes the nodecomprising: an interface to at least one other node and wherein thecontrol node is adapted to establish or modify at least a portion of theconnection and to employ one or more coding schemes along theconnection, wherein the coding scheme is selected from a plurality ofsupported coding schemes potentially affecting connection quality byindividual amounts, the control node being operative to controlestablishment of a portion of the connection based in part on anindicator received in a control message, the indicator includinginformation pertaining to connection quality, wherein the indicatorincludes a plurality of individual values corresponding to individualcoding schemes, each value indicating an expected accumulated impairmentassociated with a corresponding supported coding scheme.
 21. (canceled)22. The control node according to claim 20, wherein the connectioncomprises a plurality of connection stages each stage controlled by oneor more nodes; and wherein a plurality of candidate paths with respectto individual concatenations of coding schemes lead through anypreceding stages to a current stage.
 23. The control node according toclaim 22, wherein each value of the indicator indicates the accumulatedimpairment associated with the corresponding supported coding scheme ofthe current stage and the impairment of any coding schemes along oneparticular candidate path chosen among the plurality of candidate pathsleading to the current stage.
 24. The control node according to claim23, wherein the particular candidate path is a path of least impairment.25. The control node according to claim 20, wherein the accumulatedimpairment includes impairment due to processing performed bytranscoders associated with the coding schemes.
 26. The control nodeaccording to claim 20, wherein the accumulated impairment includesimpairment due to radio impairment.
 27. The control node according toclaim 20, wherein the indicator is sent between control nodes, betweenpayload nodes, or between payload and control nodes, and the connectionis established between payload nodes.
 28. The control node according toclaim 20, wherein each stage of the connection is adapted to update thevalues of the indicator based on the supported coding schemes of thecorresponding stage.
 29. The control node according to claim 22, whereinthe indicator is initially forwarded from an originating stage to aterminating stage.